/*******************************************************
 * 文件名称:  com.minis.beans.XmlBeanDefinitionReader
 *
 * 系统名称:
 *
 * 模块名称:
 *
 * 软件版权: 小刘开发
 *
 * 功能说明:
 *
 * 开发人员: rui.liu
 *
 * 开发时间: 2024/8/12 09:56
 *
 * 修改记录:
 *
 *
 *
 * 程序版本     修改日期   修改人员   修改单号
 *
 *******************/
package com.minis.beans;

import com.minis.core.Resource;
import org.dom4j.Element;

/**
 * <p>Title: XmlBeanDefinitionReader</p>
 * <p>Description: XML 如何转换成我们需要的 BeanDefinition</p>
 *
 * @Author rui.liu
 * @Date 2024/8/12 09:56
 * @Version
 */
public class XmlBeanDefinitionReader {
    BeanFactory beanFactory;

    public XmlBeanDefinitionReader(BeanFactory beanFactory) {
        this.beanFactory = beanFactory;
    }

    public void loadBeanDefinitions(Resource resource) {
        while (resource.hasNext()) {
            Element element = (Element)resource.next();
            String beanId = element.attributeValue("id");
            String beanClass = element.attributeValue("class");
            BeanDefinition beanDefinition = new BeanDefinition(beanId, beanClass);
            this.beanFactory.registerBeanDefinition(beanDefinition);
        }
    }
}

